package com.xian.zk.core;

import com.xian.zk.model.Instance;
import com.xian.zk.model.ServerNode;

import java.util.List;
import java.util.Map;
import java.util.Set;

/**
 * @program: zoo-task
 * @description:
 * @author: liru.xian
 * @create: 2022-01-14 18:09
 **/

public interface ServerDataService {

    /**
     * 获取map 节点
     * @param path 路径节点
     * @return
     */
    Map<String,Instance> getPathNode(String path);

    /**
     * 获取serverNode 集合
     * @return
     */
    List<Instance> getAllList();

    /**
     * 获取元数据
     * @param instanceId 实例唯一ID
     * @return
     */
    Map<String, String> getMetadata(String instanceId);

    /**
     *  获取所有的 serializeId
     * @return
     */
    Set<String> getSerializeId();

    /**
     * 获取父类path
     * @return
     */
    String getParentPath();
}
